Micron Document
██████╗ ███████╗████████╗██╗██████╗ ███████╗██████╗ ██╗ █████╗
██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██║██╔══██╗
██████╔╝█████╗ ██║ ██║██████╔╝█████╗ ██║ ██║██║███████║
██╔══██╗██╔══╝ ██║ ██║██╔═══╝ ██╔══╝ ██║ ██║██║██╔══██║
██║ ██║███████╗ ██║ ██║██║ ███████╗██████╔╝██║██║ ██║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝╚═════╝ ╚═╝╚═╝ ╚═╝


🬧 The NomadNet Encyclopedia | Archives | Info
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b

🔍 Search

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

MS-DOS
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
mwbqMS-DOS (sigla di mwbgMicrosoft mwbwDisk Operating System, in italiano solitamente letto "emme esse dòs"cite-ref-1[1]) è un mwdasistema operativo di mwdqMicrosoft, non più in produzione, dedicato ai mwdgpersonal computer con mwdwmicroprocessore mweax86. Commercializzato dal 1982 al 2000, fu il principale esponente della famiglia di sistemi operativi mweqDOS utilizzata nei mwegPC IBM e compatibili, che negli anni ottanta arrivarono a rappresentare l'80% del mercato mondiale. Fino all'avvento di mwewWindows 95, uscito nel 1995, è stato il sistema operativo per mwfacomputer più diffuso al mondo.

Contents

Storia
Cloni
Note

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Storia

Nell'ottobre del 1980 IBM stava cercando un sistema operativo per il suo nuovo personal computer, il mwgaPC IBM, e si rivolse alla mwgqDigital Research di mwggGary Kildall, già autore del mwgwCP/M che allora era lo standard per i microcomputer. I negoziati però fallirono perché la IBM offriva il pagamento di una licenza fissa di 250.000 dollari indipendentemente dal numero di copie del sistema operativo realizzate, mentre Digital Research voleva un accordo basato sul pagamento di una mwharoyalty per ogni singola copia realizzata.cite-ref-2[2]cite-ref-3[3]

Continuando la ricerca, IBM chiese alla Microsoft di mwjgBill Gates e mwjwPaul Allen - che allora produceva principalmente linguaggi di programmazione come il mwkaMicrosoft BASIC - la quale prese contatti con la mwkqSeattle Computer Products (SCP) che pochi mesi prima aveva scritto un clone a 16 bit del CP/M chiamato mwkgQDOS (mwkwQuick & mwlaDirty mwlqOperating mwlgSystemcite-ref-4[4]), poi distribuito come mwmw86-DOS, per i mwnaGazelle, dei mwnqmicrocomputer che stava producendo, basati sull'mwng8086 e sul bus mwnwS-100. Dopo una veloce revisione dei sorgenti, che consistevano in circa 4000 linee di codice mwoaassembly, il tutto fu mandato alla IBM per una valutazione.

IBM rimase soddisfatta, quindi Microsoft acquisì i diritti dell'86-DOS dalla SCP nel luglio 1981. Il mese dopo la prima versione di MS-DOS era sul mercato; IBM però, avendola sottoposta a un esteso controllo di qualità e avendo trovato oltre 300 bug, ne riscrisse alcune parti e ne cambiò il nome in mwogPC-DOS 1.0 e entrambe le versioni furono licenziate congiuntamente da Microsoft e da IBM. Le versioni successive furono licenziate separatamente, da Microsoft come MS-DOS e da IBM come PC-DOS, in genere in coincidenza con l'uscita sul mercato di una nuova linea di personal computer.

Inizialmente non era obbligatorio comprare una copia di MS-DOS insieme ai PC IBM, ma si poteva scegliere fra alcuni sistemi operativi come il mwpaCP/M-86 (poi DR-DOS), l'mwpqUCSD p-System, l'IBM PC-DOS, lo XENIX (cioè lo UNIX di AT&T con licenza acquistata e riadattato da Microsoft per i microcomputer). Tuttavia il prezzo del CP/M era di 240 dollari, quello del p-System di poco meno, mentre l'MS-DOS costava 39,95 dollari, rendendolo una scelta praticamente preferibile in molti ambiti. La pratica di vendere l'MS-DOS e il PC-DOS solo insieme a un PC iniziò a partire dalla vendita degli AT/339, con la versione 3.0 del DOS.

Fino alla mwpwversione 3.1 di Microsoft Windows l'MS-DOS era il sistema operativo con il quale il computer si avviava e mwqaWindows veniva esplicitamente caricato dall'utente successivamente; a partire da mwqqWindows 95, il processo di avvio del sistema IBM-compatibile venne modificato in modo da caricare l'MS-DOS e, in automatico, Windows. Ciò venne fatto per mantenere la retrocompatibilità con i programmi DOS, ma dando anche all'utente l'impressione di un ambiente totalmente grafico (viene visto in tal senso l'artificio di visualizzare una schermata grafica con il logo di Windows 95 durante l'avvio di MS-DOS). L'ultimo sistema operativo installabile tramite il DOS fu mwqgWindows XP Service Pack 1.

A differenza della linea di prodotti da Windows 95 a mwraWindows Me, detta mwrqWin9x (basata su MS-DOS a 16 bit ma con un numero di componenti via via maggiore a mwrg32 bit e non basati su DOS), la nuova linea mwrwWindows NT nacque sin dalla versione 3.1 non retrocompatibile, totalmente a 32 bit e priva di reale supporto MS-DOS (il prompt dei comandi fornito era in effetti un applicativo Win32 che emulava una console e i principali comandi DOS, senza però inglobare nulla del precedente sistema operativo). MS-DOS è stato reso definitivamente obsoleto con la nascita di mwsaWindows XP, prima versione della linea di prodotti NT orientata al mercato consumer. Oggi Windows fornisce un limitato sottosistema DOS (NTVDM) che però, a partire da mwsqWindows Vista, non supporta neanche la modalità a schermo intero necessaria per eseguire gran parte dei giochi per DOS. Pertanto, l'emulazione del vecchio sistema è demandata a programmi di terze parti di livello utente, il più noto dei quali è mwsgDOSBox.cite-ref-5[5]

Il 26 marzo 2014 Microsoft concede al mwuaComputer History Museum di pubblicare, sotto una licenza ad uso esclusivamente consultativo e non commerciale, i sorgenti delle versioni 1.1 e 2.0 di MS-DOS.cite-ref-6[6] A fine 2018 i sorgenti condivisi quattro anni prima vengono ripubblicati da Microsoft sul mwvqportale mwvgGitHub sotto mwvwlicenza MIT.cite-ref-7[7]

Il 25 aprile 2024 Microsoft pubblica anche i sorgenti di MS-DOS 4.0 su GitHub sempre con licenza MIT.cite-ref-8[8]

Caratteristiche

Architettura

MS-DOS era un sistema operativo monoutente e monotask, cioè capace di far lavorare un solo utente che poteva utilizzare un solo programma alla volta. Il mercato sviluppò, sfruttando una peculiarità del meccanismo di esecuzione dei programmi di DOS, i cosiddetti mwzaTSR (mwzqTerminate and Stay Resident, termina e resta residente): programmi che, una volta caricati, restituivano il controllo alla shell senza però liberare la memoria allocata e, sovente, assumendo il controllo della tastiera o di un altro dispositivo, in modo da poter essere in qualche modo invocati dall'utente. Ciò consentiva una sia pur elementare simulazione di multitasking, anche se la pratica dimostrò che due o più TSR entravano spesso in conflitto o causavano instabilità al sistema.

I principali limiti del DOS sono stati la limitazione a 640KB di mwzwRAM, la mancanza di supporto per la mwaarientranza, l'architettura esclusivamente a 16 bit e il fatto che ogni processo, una volta avviato, avesse il controllo totale del sistema. Tali limitazioni erano dovute a scelte progettuali, basate sulle limitazioni del primo mwaqPC IBM; essendo strutturali, questi limiti non furono in seguito superabili. Divenuti presto evidenti per la rapidissima evoluzione tecnologica di quegli anni, questi limiti vennero poi aggirati con stratagemmi software come i gestori di memoria EMS e XMS, e i cosiddetti DOS extender che gestivano il funzionamento a 32 mwagbit in mwawmodalità protetta, che MS-DOS non poteva supportare. Tuttavia non si trattava di modifiche strutturali al SO: in ogni caso la gestione del mwbafile system e la risposta agli mwbqinterrupt restavano comunque in mano al vecchio MS-DOS e soffrivano dei suoi limiti.

Alla fine, la Microsoft fu costretta ad abbandonare l'MS-DOS e scrivere da zero una nuova famiglia di mwbwsistemi operativi, cioè le varie versioni di mwcaWindows NT.

Il codice eseguibile fondamentale del DOS era contenuto in due file dal nome mwcgIO.SYS e MSDOS.SYS. Il primo conteneva le routine di servizio degli interrupt e la gestione delle periferiche fisiche e caricava il secondo, che conteneva il gestore di periferiche logiche e il gestore del file system FAT. MSDOS.SYS caricava a sua volta il COMMAND.COM, la shell interprete dei comandi. I file dovevano occupare le prime due posizioni nella mwcwFile Allocation Table del disco ed essere contingui. Sul PC-DOS i file si chiamavano rispettivamente IBMBIO.COM e IBMDOS.COM ma svolgevano le medesime mansioni. Altri file di sistema rilevanti erano CONFIG.SYS e AUTOEXEC.BAT: il primo si occupava della configurazione dei dispositivi (periferiche) e delle applicazioni; il secondo, invece, era un eseguibile di tipo batch che gestiva i comandi automatici all'avvio del sistema. Tutti questi file di sistema si trovavano nella mwdadirectory principale del disco di avvio.

Interfaccia dell'utente

L'interfaccia standard di MS-DOS, un'mwdwinterfaccia a riga di comando, era una mweashell (chiamata mweqcommand), come su tutti i sistemi dell'epoca. In seguito divennero disponibili altre interfacce utente, basate su menu testuali (come, ad esempio, mwegNorton Commander) o grafiche, come il mwewGEM e le prime versioni di mwfaMicrosoft Windows fino alla 3.11.

Memoria RAM

La mwfwmemoria mwgaRAM nel MS-DOS viene suddivisa in:

• mwgwmemoria convenzionale (o memoria base), che indica i primi 640 mwhaKilobyte di memoria, che sono gli unici che il sistema è in grado di utilizzare in maniera nativa. Questa rappresenta la prima quantità di memoria massima allocabile dal processore, in quanto il resto, 360 kB, era usata per altri scopi.
• mwhgmemoria espansa, che rappresenta la memoria compresa tra i primi 640 kB ed il primo mwhwMegabyte. Questa può essere visualizzata solo attraverso una finestra di 64 Kb e per essere utilizzata è necessario un apposito tipogestore denominato mwiamwiqExpanded Memory Specification (Uno dei più famosi è ad esempio mwigmwiwEMM386).
• mwjqmemoria estesa, che indica la parte di memoria successiva al primo mwjgMegabyte in un mwjwPC IBM o compatibile con una mwkaCPU mwkq80286 o successiva.cite-ref-9[9]

Versioni

| Versione | Data di distribuzione | Note |
|---|---|---|
| MS-DOS 1.0 | 1981 | Supporta solo floppy disk da 160 kB [ 10 ] |
| MS-DOS 1.24 | giugno 1982 | corretti alcuni bug; supporto per floppy disk a doppia faccia |
| MS-DOS 1.25 | luglio 1982 | prima release non IBM del PC DOS: la storia dell'MS-DOS propriamente detto inizia da qui |
| MS-DOS 2.0 | 1983 | supporto per disco fisso e cartelle annidate [ 10 ] |
| MS-DOS 2.01 | maggio 1983 | supporto iniziale per l'internazionalizzazione (comando COUNTRY) |
| MS-DOS 2.11 | dicembre 1983 | una via di mezzo tra MS-DOS 2.01 e PC DOS 2.10 |
| MS-DOS 2.12 | 1983 | versione speciale per TI pro |
| MS-DOS 3.0 | 1984 | supporto disco fisso migliorato, supporto rete [ 10 ] |
| MS-DOS 3.05 | ottobre 1984 | prima release non IBM di PC DOS versione 3 |
| MS-DOS 3.25 | ottobre 1985 | esteso il supporto alle lingue straniere |
| MS-DOS 4.0 | aprile 1986 | lanciato solo in Europa; introdotto il multitasking con prelazione e della gui MS-DOS Shell; molto instabile e pieno di bug viene ritirato dal mercato poco tempo dopo. |
| MS-DOS 3.31 | novembre 1987 | supporto per partizioni maggiori di 32 MB; versioni diverse da parte di vari OEM |
| MS-DOS 2.11R | 1988 | versione bootabile da ROM per i PC Tandy |
| MS-DOS 4.01 | novembre 1988 | corregge molti bug della catastrofica versione 4.0 ma è ancora instabile. Nuova shell testuale, supporto per partizioni più grandi [ 10 ] . |
| MS-DOS 3.21R.85 | settembre 1989 | ROM DOS, supporta il Flash file system per i portatili |
| MS-DOS 3.3R | 1990 | ROM DOS, versione per i portatili TI |
| MS-DOS 5.0 | giugno 1991 | introdotto l'uso della memoria alta; possibilità di usare fino a 8 hard disk; supporto ai floppy disk da 2,88 MB; versione decisamente più stabile e robusta delle precedenti. Nuovo editor di testo potenziato (Edit) [ 10 ] . |
| MS-DOS V | febbraio 1993 | versione per il mercato giapponese con supporto per i caratteri Kanji a 16 bit |
| MS-DOS 6.0 | marzo 1993 | compressione del disco on the fly (Doublespace); configurazioni multiple in AUTOEXEC.BAT e CONFIG.SYS. Memmaker per ottimizzazione memoria, Scandisk evoluzione di Chkdsk , gestione antivirus [ 10 ] . |
| MS-DOS 6.20 | settembre 1993 | Doublespace riscritto per perdite di dati che occasionalmente causava |
| MS-DOS 6.21 | febbraio 1994 | Doublespace rimosso dopo che la Stac Electronics aveva vinto la causa per violazione di copyright |
| MS-DOS 6.22 | maggio 1994 | nuovo software di compressione del disco (Drivespace); ultima versione di DOS stand-alone [ 10 ] . |
| MS-DOS 7.0 | agosto 1995 | incorporata in Windows 95 , introdotto il supporto al VFAT che consente l'uso di nomi di file lunghi |
| MS-DOS 7.10 | agosto 1996 | incorporata in Windows 95B OSR2 e Windows 98 , introdotto il supporto al file system FAT32 |
| MS-DOS 8.0 | settembre 2000 | ultima versione di MS-DOS; incorporata in Windows Me [ 10 ] . |
| MS-DOS | 31 dicembre 2001 | Fine del supporto |

Cloni

Dato il grande successo e la longevità del DOS, ci sono moltissimi sistemi operativi compatibili con varie versioni dell'MS-DOS o che cercano di estenderne le funzioni, alcuni commerciali, alcuni gratuiti, altri addirittura open source.

Cloni commerciali:

mwavwmwav0MultiUserDOS-7 Gold mwav4DR Multiuser-DOS mwav8SuperDOS

Cloni:

mwawmmwawqmwawuDR-DOS

Cloni gratuiti:

mwawkmwawoOpenDOS mwawsDOS-C mwawwTR-DOS

Cloni mwaw4open source:

mwaxemwaximwaxmFreeDOS mwaxqFreeGEM DOS

Software

Il software per MS-DOS coincide sostanzialmente con il software per mwaxgDOS, i due nomi venivano e vengono spesso usati in modo intercambiabile. Grazie al successo dei PC e compatibili, gli applicativi per MS-DOS ebbero enorme diffusione fino all'avvento dei sistemi mwaxkWindows 9x, dominando presto l'ambito serio e professionale, e dagli anni '90 dominando anche il campo dei videogiochi per computer.

Note

cite-note-11. mwayamwayemwayiProprietà delle parole, su mwaymnuance.com.
cite-note-22. mwaycTom Rolander, mwaygmwaykThe rest of the story: How Bill Gates beat Gary Kildall in OS war, Part 1, The Scoble Show mwayo(archiviato dall'mwaysurl originale il 4 novembre 2007).
cite-note-33. mway8Tony Bove, mwazamwazeJust Say No to Microsoft, No Starch Press, 2005, pp.mwazi 9-11, mwazmISBNmwazq 1-59327-064-X.
cite-note-44. mwazk(mwazomwazsEN) Raul Rojas, mwazwmwaz0DOS, su mwaz4Paterson Technology, aprile 2011. mwaz8URL consultato il 22 luglio 2018 mwaaa(archiviato dall'mwaaeurl originale il 23 luglio 2018).
cite-note-55. mwaaumwaaymwaacIl DOS è ancora vivo, nascosto dentro Windows 10 - Wired, in mwaagWired, 17 gennaio 2017. mwaakURL consultato il 4 febbraio 2017.
cite-note-66. mwaa0(mwaa4mwaa8EN) mwabamwabeMicrosoft MS-DOS early source code | Computer History Museum, su mwabiwww.computerhistory.org. mwabmURL consultato il 4 febbraio 2017.
cite-note-77. mwabc(mwabgmwabkEN) Rich Turner, mwabomwabsRe-Open-Sourcing MS-DOS 1.25 and 2.0, su mwabwWindows Command Line, 28 settembre 2018. mwab0URL consultato il 14 maggio 2024.
cite-note-88. mwace(mwacimwacmEN) Scott Hanselman, Jeff Wilcox, mwacqmwacuOpen sourcing MS-DOS 4.0, su mwacyMicrosoft Open Source Blog, 25 aprile 2024. mwaccURL consultato il 14 maggio 2024.
cite-note-99. citeref-mcmicrocomputer-95mwacsmwacwMemoria estesa ed espansa (mwac0mwac4JPG), in mwac8mwadaMCmicrocomputer, n.mwade 95, Roma, Technimedia, aprile 1990, pp.mwadi 103-106, mwadmISSNmwadq 1123-2714.
cite-note-rc7-101. citeref-retro-computer-7mwae0MS-DOS - Storia e curiosìtà del sistema operativo che ha conquistato il mondo, in mwae4Retro Computer, n.mwae8 7, Cernusco sul Naviglio, Sprea, aprile/maggio 2025, p.mwafa 55, mwafeISSNmwafi 3034-8676.

Bibliografia

• mwaf0IBM Personal Computer – DOS – Disk Operating System della Microsoft Corp. – Manuale di riferimento (versione 2.10), IBM Italia, 1984.
• mwaf8Guida introduttiva Microsoft MS DOS – Sistema Operativo – Versione 3.3, Bit Computers, 1988.
• mwageMS-DOS - Guida utente (3.10), Olivetti, 1986.
• mwagmDan Gookin, DOS - Per saperne di più senza fatica, McGraw-Hill, 1994.
• mwaguCarl Siechert e Chris Wood, Il manuale MS-DOS 3.30, traduzione di Mauro Formaggio, Milano, McGraw-Hill, 1990, ISBN 88-386-0159-3.

Articoli

• citeref-mcmicrocomputer-10010 anni di MS-DOS. E poi? (JPG) (con intervista a Bill Gates), in MCmicrocomputer, n. 100, Roma, Technimedia, ottobre 1990, pp. 180-189, ISSN 1123-2714.
• citeref-mcmicrocomputer-88Microsoft MS-DOS 4.01 (JPG), in MCmicrocomputer, n. 88, Roma, Technimedia, settembre 1989, pp. 110-115, ISSN 1123-2714.
• citeref-mcmicrocomputer-113Microsoft MS-DOS 5.0 (JPG), in MCmicrocomputer, n. 113, Roma, Technimedia, dicembre 1991, pp. 216-220, ISSN 1123-2714.
• citeref-mcmicrocomputer-127Anteprima MS-DOS 6.0 (JPG), in MCmicrocomputer, n. 127, Roma, Technimedia, marzo 1993, p. 124, ISSN 1123-2714.

Voci correlate

• mwahaDOS – famiglia
• mwahi86-DOS – antesignano dell'MS-DOS
• mwahqDOSBox – emulatore open source di MS-DOS
• mwahyFreeDOS – clone aggiornato, libero e open source, di MS-DOS
• Categoria:Software per DOS
• Categoria:Videogiochi per DOS

Altri progetti

Altri progetti

• Wikimedia Commons

• Wikimedia Commons contiene immagini o altri file sull'MS-DOS

Collegamenti esterni

• (EN) Sito ufficiale, su microsoft.com.
• citereftreccani-itMS-DOS, su Treccani.it – Enciclopedie on line, Istituto dell'Enciclopedia Italiana.
• citerefdizionario-delle-scienze-fisicheMS-DOS, in Dizionario delle scienze fisiche, Istituto dell'Enciclopedia Italiana, 1996.
• citerefsapere-itMS-DOS, su sapere.it, De Agostini.
• citerefenciclopedia-della-matematicaMS-DOS, in Enciclopedia della Matematica, Istituto dell'Enciclopedia Italiana, 2013.
• citerefbritannica-com(EN) MS-DOS, su Enciclopedia Britannica, Encyclopædia Britannica, Inc.
• citerefopen-library(EN) Opere riguardanti MS-DOS, su Open Library, Internet Archive.
• Repository sorgenti di MS-DOS, su github.com.
• citereffoldoc(EN) Denis Howe, Microsoft Disk Operating System, in Free On-line Dictionary of Computing. Disponibile con licenza mwaimGFDL